home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Night Owl 6
/
Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso
/
029a
/
sutil262.zip
/
SUTIL.DOC
< prev
next >
Wrap
Text File
|
1991-07-15
|
24KB
|
510 lines
------------------------------------------------------------------------------
07/15/91 Supreme Utility All Rights Reserved
Copyright (c) 1990-91 by SupremeSoft Integrated Copy/Move/Delete/Rename
------------------------------------------------------------------------------
Version 2.62
Supreme Utility is a command line based program which allows you to
Copy, Delete, Rename and Move files all in one operation. Imagine begin able
to delete all your BAK files while at the same time copying all your DOC
files to your word processing directory!
Supreme Utility can work locally or globally. That is, it can
manipulate files in only the current directory, or on the entire disk.
Naturally you are in complete control at all times, unless you choose not to
be. Here is the calling syntax: ( [] indicates optional items)
SUtil [-|/][Gflags] [-|/][mdcrx] filelist [,filelist] [-|/][flags] [@filen] ..
The ".." indicates that you may include more combinations of commands/flags
in the same form as specified earlier.
Where: m = move these files
d = delete these files
c = copy these files
r = rename these files
x = exclude these files (See Excluding Files below)
Flags are: h = Use Hidden/System files as well (Off by default)
g = Work on the entire disk (Off by default)
p = Disable prompting (On by default)
q = Quiet mode (Off by default)
e = check Exclude list (Default depends)
s = Scan subdirectories (Off by default)
@filen: Indicates a file consisting of operations to be read in.
(filen = any valid DOS filename, including leading path)
A filelist consists of a list of filenames, as many as you want. If you do
not explicitly specify a second filelist using the "," separator, the last
filename in the file list is taken as the target (if appropriate). (See
"Oddities" below)
[-|/] indicates you may use either a "-" or a "/". These are commonly
referred to as the "switch" characters.
Each operation (m,d,r, c, or x) MUST be preceded by a switch, and each flag
(H, G, P, Q, E) MUST be preceded by a switch.
Case is insignificant, i.e., M = m, C = c, H=h, etc.
GFlags are flags which are set as defaults for all operations. If you
specify any flags after certain commands, they will then override the default
flags set in GFlags for that operation only.
Flags may appear anywhere on the command line, except between filename
lists. If you override a default flag, it will return to its default after
the operation completes. Use GFlags to set/reset defaults.
Quiet mode will turn off the File Exists warning, thereby proceeding with
the operation and overwriting any existing files.
If a "," is included between filename lists, the filenames FOLLOWING the
"," will be used as new target names. (See below for further information)
Filenames may consist of a leading path, and any DOS wildcards.
NOTE!: A DOS wildcard of *?????, that is a star (*) anywhere in the
wildcard, will match ALL files, regardless of what follows, or
precedes the * indicator. See ODDITIES for more information.
Each command may have any number of filenames following it.
You may use multiple @filen specifications if you wish.
Ctrl-Break/Ctrl-C will abort the program.
DOS ERRORLEVEL is set for batch file testing. The following are the
possible return codes:
0 Success
1 Help was activated (no command line)
2 Fatal error, program aborted
3 Out of memory error
Use the DOS environment variable SUTIL to set initial operations. The syntax
is: SET SUTIL = [operations]
If you choose the Sub-directory option, Supreme Utility will scan all
subdirectories of the CURRENT directory for matching files. Any leading path
identifiers are ignored. If you issue the Global option, then this option will
be ignored.
-----------------------------------------------------------------------------
Moving files:
To move files, use the -m or /m option and specify the files to be
moved. You do not have to specify the target directory as long as the files
to be moved are not in the current directory. If you leave prompting active,
you will be asked to confirm each move.
The target directory cannot be the current directory, but can be
anything else, including another Drive/Directory combination. The files will
be moved extremely quickly, though Drive to Drive moves will take longer
depending on the drive types.
You may also specify that the files be named differently by
specifying a path/filename combination. See Example5.
The Date/Time stamp on the source file will be preserved on the
target file. In other words, the Date/Time stamp on the target file will
be the same as on the source file.
Example1: SUtil /m test.bak test.doc \temp /p
Does : Moves "test.bak" and "test.doc" to the "\temp\" directory, and
does not prompt you for verification.
Example2: SUtil -m \temp\*.bak \docs\test.doc \tt.doc
Does : Moves all BAK files from the "\temp\" directory, "test.doc"
from the "\docs\" directory, "tt.doc" from the root to the CURRENT
directory.
Example3: SUtil /m *.bak \junk\ /h /g /q
Does : Moves all BAK files on the ENTIRE disk to the "\junk\" directory,
and this will also move BAK files which are marked as
Hidden/System. In addition, if any of the files exist in the
target directory, they are overwritten automatically.
Example4: SUtil -m \temp\*.bak /g
Does : Will move all BAK files from the "\temp\" directory to the CURRENT
directory, and will then attempt to find any further "\temp\*.bak"
files on the disk. Since there will be no more, nothing further is
done.
Example5: SUtil -m myfile.tst hey.me,\test\junk.tst \test\hey.tst /p/h
Does : Will move "myfile.tst" to "\test\junk.tst" and "hey.me" to
"\test\hey.tst". No prompting is done, and hidden files are moved.
Example6: Sutil -m *.pas, *.bak /p
Does : Moves all PAS files in the current directory to BAK files in the
current directory. You are not prompted.
(This is essentially the same as a rename)
Remember, you cannot move files in the current directory to the
current directory unless you specify a new target name. The program will
issue an error message if you attempt to move into the same
directory using the same name.
-----------------------------------------------------------------------------
Deleting Files:
To Delete files use the -d or /d option. If you leave prompting on,
you will be asked to confirm each delete.
Example1: SUtil -d *.bak *.txt /p
Does : Deletes all BAK files and all TXT files in the current directory,
but does not ask you to verify the delete(s).
Example2: SUtil /d *.bak /g /p
Does : Deletes all BAK files on the entire disk. Even though prompting is
off, you will be asked to confirm this rather drastic operation.
(This prevents accidental *.* global deletions)
Example3: SUtil -d *.bak *.tx2 /g
Does : Same as above example, except all TX2 files are deleted as well and
you are prompted before each file is deleted.
Example4: SUtil /d *.bak -g -d *.obj /p /H
Does : Same as Example2 except all OBJ files in the current directory are
deleted as well, even if the files are marked as Hidden/System. You
are not prompted for the delete of the OBJ files.
Example5: SUtil /d *.bak /g *.~* /g
Does : Deletes all BAK files and all *.~* files on the entire disk. You
are prompted to confirm both of these deletes. The second "/g" is
not translated since you can not turn off global usage once
activated.
------------------------------------------------------------------------------
Copying files:
To copy files, use the -c or /c option. You may specify a list of
files and a target directory. Optionally you can leave out the target
directory, and the current directory will be used. To copy a file to a new
name, specify a path/filename combination as the target. (See Example3)
The Date/Time stamp on the source file will be preserved on the
target file. In other words, the Date/Time stamp on the target file will
be the same as on the source file.
Example1: SUtil -c *.bak \temp /g /p
Does : Will copy all BAK files on the disk to the "\temp\" directory. You
will not be asked for verification.
Example2: SUtil -c \pas\*.pas \myfile.exe \*.obj /h /q
Does : Will copy all PAS files from the "\pas\" directory, "myfile.exe"
from the root directory, all OBJ files from the root directory, to
the CURRENT directory. Any files marked as Hidden/System will also
be copied. You are asked to verify each file copied. Should any
files already exist in the target directory they are overwritten
automatically, without warning.
Example3: SUtil -c myfile.pas , \temp\test.pas /p
Does : Will copy "myfile.pas" to "\temp\test.pas" without prompting you.
Note the use of the "," to indicate that "\temp\myfile.pas" is a
target and not a file to be copied. (The spaces before and after the
comma are only for emphasis and need not be there.
Example4: SUtil /c ha.exe \temp\ha.exe /p
Does : Will copy "ha.exe" to the current directory, and "\temp\ha.exe"
to the current directory. This probably isn't what you wanted, but
instead wanted to use something like Example3.
------------------------------------------------------------------------------
Renaming files:
To rename files, use the /r or -r option. You may specify a list of
filenames and MUST include target names using the "," (comma) separator.
Example1: SUtil -r *.bak, *.pas /p/g
Does : Will rename all BAK files on the ENTIRE disk to PAS files. You
are not prompted at all.
Example2: SUtil /r *.bak myfile.txt,*.txt junk.txt
Does : Will rename all BAK files to TXT and "myfile.txt" to "junk.txt".
Example3: SUtil -r *.bak *.tst
Does : Produces an error, you did not specify any target files.
Example4: SUtil -r \temp\myfile.tst,myfiles.tst
Does : Renames "\temp\myfile.tst" to "myfiles.tst" effectively mimicking a
move operation.
------------------------------------------------------------------------------
Re-issuing a command and the use of GFlags:
Once you have used a command, you may reuse it later on should you so desire.
Example1: SUtil /p -c *.bak a: -m test.pas \pas /p -c \pas\*.c \c /q
Does : Prompting is disabled for all operations, unless overriden.
Copies all BAK files in the current directory to A:, no prompting.
Moves TEST.PAS to \PAS, prompting is enabled.
Copies all C files in \PAS to \C, Quiet mode is enabled.
Example2: SUtil -q-p -r *.bak *.txt -m *.txt \junk /q -r *.asc *.txt
Does : Quiet mode is on, Prompting is off for all operations.
Renames all BAK files to TXT.
Moves all TXT files to \JUNK, Quiet mode is disabled.
Renames all ASC files to TXT.
------------------------------------------------------------------------------
Excluding Files:
The exclude list consists of filenames which are NOT to be used in any
operations.
If you specify an Exclude list as the very first operation, this becomes
the GLOBAL exclude list, and all operations will check that list before acting
on a file. In this case, use the E flag after any operation you do not want
to check the exclude list.
If you specify an Exclude list after any operation, only that operation
will check that exclude list before operating on any file. If there is a
GLOBAL exclude list, for this operation it is ignored in favor of the new
exclude list.
If you specify the E flag as a GFlag (i.e. it is used before any operation)
the very first Exclude list encountered will be used as the GLOBAL exclude
list for all operations FOLLOWING the exclude list declaration and of course
the operation just before the exclude declaration.
If you specify the E flag after any operation, and NO GLOBAL exclude list
exists, if there was an exclude list used, that FIRST exclude list is used.
(See examples 5 and 6 for an explanation of this)
Do NOT use the "," separator to specify target names, since this does not
make sense, and all files following the "," will be ignored.
Example1: SUtil -p-q -x *.pas -d *.* -m *.* \temp /e
Does : Prompting Off, Quiet Mode on. Exclude all PAS files from ALL
operations.
Deletes all files, except PAS files.
Moves ALL files, INCLUDING PAS files to \temp. (/E overrides the
checking of the Exclude list)
Example2: SUtil -p-q -d *.* -x *.pas -m *.* \temp
Does : Prompting Off, Quiet Mode on.
Deletes all files, except PAS files. -x sets up the exclude list
for the Delete operation.
Moves ALL files, INCLUDING PAS files to \temp. The -x only affected
the Delete operation.
Example3: SUtil -p -q -e -d *.* -x *.pas -m *.* \temp
Does : Prompting Off, Quiet Mode on, Exclude List is Global.
Deletes all files, except PAS files. -x sets up the exclude list
for ALL further operations since the E GFlag was specified.
Moves ALL files, EXCEPT PAS files to \temp. In other words, this
operation does nothing (only PAS files are left as it is)
Example4: SUtil -p -q -e -c *.* \temp -d *.* -x *.pas -m *.* \temp
Does : Prompting Off, Quiet Mode on, Exclude List is Global.
Copies ALL files to \temp. There currently is no Exclude list.
Deletes all files, except PAS files. -x sets up the exclude list
for ALL further operations since the E GFlag was specified.
Moves ALL files, EXCEPT PAS files to \temp. In other words, this
operation does nothing (only PAS files are left as it is)
Example5: SUtil -p-q -d *.* -x *.pas -m *.* \temp /e
Does : This is very similar to Example2, except the E flag is specified.
Prompting Off, Quiet Mode on.
Deletes all files, except PAS files. -x sets up the exclude list
for the Delete operation.
Moves ALL files, EXCEPT PAS files to \temp. The E flag sets up the
first valid Exclude list to be used with the Move. (Which is of
course the -x *.pas declaration)
Example6: SUtil -p-q -d *.* -x *.pas -c *.* \temp -x *.bak -m *.* \temp /e
Does : Prompting Off, Quiet Mode on.
Deletes all files, except PAS files. -x sets up the exclude list
for the Delete operation.
Copies all files, except BAK files to \temp. The second -x sets up
the exclude list for the Copy operation.
Moves ALL files, EXCEPT PAS files to \temp. The E flag sets up the
first valid Exclude list to be used with the Move. (Which is the
-x *.pas declaration, NOT the -x *.bak declaration)
------------------------------------------------------------------------------
Using the @filen command:
The @filen command allows you to specify a file which contains valid SUtil
commands. The format of this file can be anything consisting of valid SUtil
syntax.
You may specify operations on a line by line basis as in:
-c *.bak /p
-m *. bak /p
etc.
Or you may use:
-c*.bak /p -m *.bak etc.
Or even:
-c *.bak /p
[linefeed]
[linefeed]
[linefeed]
-m *.bak
etc.
You may also specify any number of @filen commands on the command line, or
even within a @filen file.
For example: SUtil -p-q @test -r *.bak,*.pas @read @read2
As soon as a @filen command is encountered, that file is then read in,
before processing of the rest of the command line is done.
------------------------------------------------------------------------------
Using the Environment Variable:
The SUTIL environment variable allows you to store frequently used SUtil
settings (commands) which will be used every time SUtil is used.
For example: SET SUTIL = -p-q -x command.com *.sys
This will set the GFLAGS to No prompting, Quiet mode, and sets the GLOBAL
exclusion list to "command.com" and "*.sys". The commands stored in the
environment variable are processed BEFORE any commands on the command line.
Specific operations can naturally override these settings.
------------------------------------------------------------------------------
Error Reporting:
Error reporting is quite extensive, and can sometimes become
annoying, but it is for your safety. SUtil will ask you to confirm any file
overwrites and any overwrites of files marked as ReadOnly. Most errors will
not be fatal, and will only affect the current file being used. Occasionally
an error may affect the entire operation, and then the operation will be
aborted, and the next one executed. (If there is one)
There are only a handful of fatal errors which are command line
related. In any case, a detailed message is printed out.
------------------------------------------------------------------------------
Warnings:
Any Move/Delete operation will delete a file. If you are doing any
of these operations you should leave prompting on to ensure that you do not
delete a file you did not intend to. In either case, you should get a copy
of one of the "undelete" programs available. (Norton Computing's Norton
Utilities are the best choice)
------------------------------------------------------------------------------
A quick note about the delete operation:
SUtil's global delete will report the number of files deleted, and the
total size of those files. This option is not quite as extensive as it could
be, but there are "prettier" utilities out there that are tailored to global
deletes. Should you find that SUtil is inadequate for your global delete
desires, you should try one of these more graphically oriented global delete
programs.
-----------------------------------------------------------------------------
Oddities:
1) All operations are done in their command line sequences. Therefore the
following command line has the effect of renaming all TXT files to BAK
files, and then deleting those SAME files, and any other BAK files! This may
or may not be intentional, but because it is very easy to make mistakes, it
is a good idea to leave prompting on:
SUtil -r *.txt,*.bak -d *.bak /p
2) If you do not wish to Copy/Move files to a new name, you do not have to
specify any target names. The program will use the last name in the filelist
as the target directory, unless it determines that the file exists, in which
case it will use the current directory as the target. Some of the examples
pointed this out, but we are now drawing your attention to it. For example,
the following each do something different:
Example: SUtil -m myfile.txt myfile.bak \temp
Does : Moves "myfile.txt" and "myfile.bak" to the "\temp" directory
Example: SUtil -m myfile.txt myfile.bak \temp\myfile.tst \temp\myfile.bak
Does : First it will attempt to move "myfile.txt" and
"myfile.bak" to the CURRENT directory, which produces an error.
Then, "\temp\myfile.bak" and "\temp\myfile.bak" are moved
to the CURRENT directory!
Example: SUtil myfile.txt myfile.bak, \temp\myfile.tst \temp\myfile.bak
Does : Moves "myfile.txt" and "myfiles.bak" to the "\temp"
directory as in the first Example, but the target names
are unnecessary.
Example: SUtil -m myfile.txt myfile.bak \temp\myfile.bak
Does : Attempts to move "myfile.txt", "myfile.bak" and "\temp\myfile.bak"
to the CURRENT directory.
3) Due to the command line switches, you may not include any "-" or "/"
characters in the filename, otherwise the program will think that you are
attempting to start a new operation/flag. Therefore, substitute a "?" for
these characters.
4) The ERRORLEVEL returned is not a true representation of the success of
Supreme Utility. Because one has the ability to execute a number of operations,
Supreme Utility will recover from the current operation and continue on to
the next if it is possible to do so.
Only when an extremely fatal internal error occurs will Supreme Utility
return a ERRORLEVEL of 2.
5) In case it's not clear, you may use any number of command operations in
one program call. This is why Supreme Utility was created. For example:
SUtil -r *.bak,*.txt -m *.txt \temp\ -c *.doc \temp -r *.utl *.bak
is a perfectly acceptable command line and the operations are done in the
sequence specified, as indicated in Oddities #1.
(If you are uncertain, the above renames all BAK files in the current
directory to TXT files, them moves all TXT files to the "\temp" directory,
and then copies all DOC files to the "\temp" directory and then renames all
UTL files in the current directory to BAK files)
6) Spaces on the command line are usually not significant. Only between
filename specifications are spaces important. For example, the following
command lines are equivalent:
SUtil -p-q-r*.bak,*.txt-m*.txt \temp /p/g
SUtil -p -q -r *.bak,*.txt -m *.txt \temp /p /q
SUtil - p - q - r *.bak , *.txt - m *.txt \temp / p / q
7) A Global operation will override the sub-directory scan.
8) Some users have reported that Supreme Utility produces an incorrect match
on any wildcard specification of: *????? or ??????*, when ???? indicates any
other character. DOS specifies that the star (*) wildcard matches ALL names.
Thus, regardless of that precedes or follows the * is ignored. Supreme
Utility DOES take the correct action! This can be dangerous!! A wildcard such
as *BAK.* will match ALL files on your disk.
Execute the DOS command: DIR *BAK.* and you will see a listing of all
files in the current directory.
------------------------------------------------------------------------------
Warranty and License:
There is NO warranty either expressed or implied. SupremeSoft can
not be held accountable for anything resulting from the use of this program.
Your use of this program acknowledges the fact that you understand that you
are using this program of your own free will, and will take any consequences
resulting from that action.
You are granted a limited license of 30 days to evaluate this
program. Should you use it beyond that period, you must register your copy,
or else be in violation of this license agreement.
------------------------------------------------------------------------------
Registration:
To register, send $20.00 to the address below. Supreme Utility is
distributed either by itself or in a Utilities package. Your registration
allows you to receive a copy of all the Utilities, in their latest versions.
Send a Check/Money Order to the following address:
SupremeSoft
105 Deerfield Drive
Easton, CT 06612
Re: Utility Package (2.53)
------------------------------------------------------------------------------